Game xếp hình 2048

13.190 lượt xem;
1 using UnityEngine;
2 using
System.Collections;
3
4 public
class InstructionsScript : MonoBehaviour {
5     
private GameControllerScript gameScript;
6     
private GUISkin currentGUISkin;
7     
private Vector2 scrollPosition;
8
9     
//instruction text
10
11             
12         
13             
14
15     
// Use this for initialization
16     
void Start () {
17         
this.gameScript = this.gameObject.GetComponent ("GameControllerScript") as GameControllerScript;
18         
this.currentGUISkin = gameScript.currentGUISkin;
19     
20     }
21     
22     
// Update is called once per frame
23     
void Update () {
24     
25     }
26
27     
void OnGUI() {
28         
if (this.gameScript.gameView == "instructions") {
29             GUI.skin = currentGUISkin;
30
31             
this.gameScript.mainCamera.transform.eulerAngles = new Vector3 (120, 23, 0);
32             
33             GUIStyle labelStyle =
new GUIStyle(currentGUISkin.label);
34             labelStyle.alignment = TextAnchor.UpperLeft;
35             GUILayout.Label (
"Instructions", "BigLabel");
36
37
38             scrollPosition = GUILayout.BeginScrollView(scrollPosition, GUILayout.Width(Screen.width), GUILayout.Height(Mathf.Ceil(Screen.height * .
80f)));
39
40             GUILayout.Label (
"Object", "Subheader");
41
42             GUILayout.Label (
@"The object of 2048-3D is to"
43                  +
" slide numbered blocks in such a way"
44                  +
" so that blocks with the same numbers collide"
45                  +
" and combine into a new block that is twice"
46                  +
" as much as the originals until"
47                  +
" the number 2048 is reached.", labelStyle);
48
49             GUILayout.Label (
"Moving the Blocks", "Subheader");
50             
51             GUILayout.Label (
@"You cannot move blocks individually, but must"
52                 +
" move all blocks simultaneously in the same direction."
53                 +
" Blocks can move forward, backward, up, down, left"
54                 +
" and right along the green connectors."
55                 +
" Simply swipe any part of the screen to move up,"
56                 +
" down, left or right (keyboard: arrow keys). To move the"
57                 +
" blocks forward and backward use the"
58                 +
" big red arrow keys at the bottom of the screen (keyboard: a and z keys)."
59                 +
" When moving, all blocks that can slide in the chosen direction will move."
60                 +
" Any block moving toward another block with the same number will collide "
61                 +
" and form a single block with twice the number as the originals", labelStyle);
62
63
64             GUILayout.Label (
"New Blocks", "Subheader");
65
66             GUILayout.Label (
@"After each move is"
67                 +
" made a new block will appear randomly in an empty position."
68                 +
" This block will have a number of either 2 or 4."
69                 +
" For an extra challenge, there is a game option you can"
70                 +
" set so that zeros can also be assinged to a new block."
71                 +
" Zeros act like any other number in that they can"
72                 +
" collide with other zeros to make a block twice as much "
73                 +
" (which is still zero).", labelStyle);
74
75
76
77             GUILayout.Label (
"Scoring and Finishing", "Subheader");
78
79             GUILayout.Label(
@"For every block collision that occurs you receive"
80                 +
" the number of points of the newly"
81                 +
" created block. If after making a move"
82                 +
" all positions are filled and no new"
83                 +
" moves are possible, the game ends."
84                 +
" A separate high score / highest block is kept for each"
85                 +
" distinct combination of game options", labelStyle);
86
87
88             GUILayout.Label (
"Game Layout Options", "Subheader");
89
90             GUILayout.Label (
@"When I first made this game there"
91                  +
" was only one game layout, a 3x3x3 cube."
92                  +
" After testing it a bit, it was way to easy"
93                  +
" so the zero option was added."
94                  +
" It was still way to easy "
95                  +
" (e.g. you could swipe without even looking and get pretty far)."
96                  +
" Therefore there are now several diffent game layouts that"
97                  +
" make the game more challenging and fun.", labelStyle);
98
99             GUILayout.Label (
"Game Timer Option", "Subheader");
100
101             GUILayout.Label (
@"To give yourself even more of a challenge"
102                              +
" you can set game options to include a timer."
103                              +
" If a timer is chosen you have a specific"
104                              +
" amount of time to combined blocks to make the 64 block."
105                              +
" If you run out of time the game is over."
106                              +
" If you reach your target before the timer runs down you will"
107                              +
" receive additional time to reach the next target."
108                              +
" The time you received is as follows: \n"
109                              +
" 64: option time + 5 seconds (because the first one is the hardest!)\n"
110                              +
" 128: option time\n"
111                              +
" 256: 2X option time\n"
112                              +
" 512: 4X option time \n"
113                              +
" 1024: 8X option time \n"
114                              +
" you get the idea.", labelStyle);
115
116             
117             GUILayout.Label (
"Acknowledgements \nand Confessions", "Subheader");
118
119             GUILayout.Label (
@"2048-3D is based upon the original" +
120                              
" 2048 game designed by Gabriele Cirulli " +
121                              
" \n\n" +
122                              
" Sound effects by freeSFX http://www.freesfx.co.uk.\n\n" +
123                              
" This game was designed using the Unity3D game engine.\n\n" +
124                              
" FOR MORE PROJECTS VISIT:" +
125                              
" https://code-projects.org/", labelStyle);
126
127
128             
foreach (Touch touch in Input.touches) {
129                 
if (touch.phase == TouchPhase.Moved)
130                 {
131                     
// dragging
132                     
this.scrollPosition.y += touch.deltaPosition.y;
133                 }
134             }
135             GUILayout.EndScrollView();
136             
137             
if (GUILayout.Button ("Return to Menu")) {
138                 
this.gameScript.gameView = "menu";
139             }
140         }
141     }
142 }


instruction text

Use this for initialization

Update is called once per frame

" Sound effects by freeSFX http:www.freesfx.co.uk.\n\n" +

" https:code-projects.org", labelStyle);

dragging



Gõ tìm kiếm nhanh...